package es.ikex.servlet;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


public class ProcesarMueble extends HttpServlet {
	private static final long serialVersionUID = 1L;


	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		Cookie[] existentes = request.getCookies();
		boolean existe = false;
		int numero = 0;
		String destino = "";
		String error ="";
		if(existentes != null){
			for(int i = 0; i < existentes.length; i++){
				if(existentes[i].getName().equals(request.getParameter("producto"))){
					existe = true;
					try{
						numero = Integer.parseInt(existentes[i].getValue()) + Integer.parseInt(request.getParameter("cantidad"));
					}
					catch(NumberFormatException e){
						error = "Introduzca un numero";
					}
					break;
				}
			}
		}
		
		if(!existe){
			try{
				numero = Integer.parseInt(request.getParameter("cantidad"));
			}
			catch(NumberFormatException e){
				error = "Introduzca un numero";
			}
		}
		if(numero < 1){
			error = "Introduzca un numero positivo";
		}
		if(error.equals("")){
			Cookie producto = new Cookie(request.getParameter("producto"), String.valueOf(numero));
			
			producto.setMaxAge(60*60*24*61);
			producto.setPath("/");
			response.addCookie(producto);
			
			destino = "/jsp/categoria.jsp?categoria="+request.getParameter("categoria");
			
			if(request.getParameter("coleccion") != null && request.getParameter("coleccion") != ""){
				destino = destino + "&coleccion=" + request.getParameter("coleccion");
			}
		}
		else{
			destino = "/jsp/detallesMuebles.jsp?codigo="+request.getParameter("producto")+"&categoria="+request.getParameter("categoria")+"&coleccion="+request.getParameter("coleccion")+"&error="+error;
		}
		request.getRequestDispatcher(destino).forward(request, response);
	}

}
